package other;
/*
* 621. 任务调度器
*
* 桶的思想
* 将字母作为数组下标, 可以巧妙的找出出现最多的元素是哪个
* */

public class LeastInterval621 {
    public int leastInterval(char[] tasks, int n) {
        int[] buck=new int[26];
        int max=0;
        int count=0;
        for (char task : tasks) {
            buck[task-'A']++;
            max=Math.max(max,buck[task-'A']);
        }
        for (int i : buck) {
            if(i==max){
                count++;
            }
        }
        return Math.max(tasks.length,(max-1)*(n+1)+count);
    }
}
